package com.hxkj.dao;

import com.hxkj.domain.po.Templet;
import java.util.List;

/**
* 数据操作接口
*
* @author: chenwei
* @version: 1.0
* @datetime: 2018-06-05 19:32:55
*
*/
public interface TempletDao {

    /**
    *
    * 根据主键查询Templet对象
    *
    * @param templetId
    * @return Templet对象
    */
    Templet get(Long templetId);

    /**
    *
    * 根据查询条件查询符合条件的Templet对象
    *
    * @param templet
    * @return 符合条件的Templet对象List
    */
    List<Templet> get(Templet templet);

    /**
    *
    * 根据主键删除Templet对象
    *
    * @param templetId
    * @return 影响条件数
    */
    int delete(Long templetId);

    /**
    *
    * 根据条件删除符合条件的Templet对象
    *
    * @param templet
    * @return 影响条件数
    */
    int delete(Templet templet);

    /**
    *
    * 插入Templet对象
    *
    * @param templet
    * @return 影响条件数
    */
    int save(Templet templet);

    /**
    *
    * 更新Templet对象
    *
    * @param templet
    * @return 影响条件数
    */
    int update(Templet templet);

    /**
     *
     * 查询Templet
     *
     * @param templet
     * @return 影响条件数
     */
    List<Templet> getTempletTree(Templet templet);


    /**
     *
     * 查询Templet
     *
     * @param templet
     * @return 影响条件数
     */
    int selectTemplteName(Templet templet);


    /**
     *
     * 查询文件夹是否包含子文件
     *
     * @param templet
     * @return
     */
    int selectChildTemplte(Templet templet);

    /**
     *
     * 查询下级是否包含模板文件
     *
     * @param templet
     * @return
     */
    int selectListTemplte(Templet templet);

    /**
     *
     * 查询下级是否包含模板文件
     *
     * @param templet
     * @return
     */
    int selectTempletFolder(Templet templet);

    /**
     *
     * 获取文件绝对路径
     *
     * @param templet
     * @return
     */
    Templet selectTempletFolderPath(Templet templet);

    /**
     *
     * 批量更新模板目录
     *
     * @param templet
     * @return
     */
    List<Templet> selectContainPathFolder(Templet templet);

    Templet getTemplet(Templet t);

    List<Templet> getList();
}
